import axios from "axios";
import { Message } from 'element-ui'
import { Loading } from 'element-ui';
// 创建axios实例
const api = axios.create({
    baseURL: '/api', // 替换为后台设置的代理跨域的临时地址
    timeout: 2000 // 设置超时时间
})
let loadingInstance
// 创建请求拦截
api.interceptors.request.use((config) => {
    loadingInstance = Loading.service({
        text: '加载中...',
        // spinner:'el-icon-loading',
        background: 'rgba(0, 0, 0, 0.7)'
    });
    
    
    
    if (config.url != '/login') {
        let token = sessionStorage.getItem('token')
        token && (config.headers.Authorization = token)
    }
    // 成功
    
    return config
}, (err) => {
    // 失败
    console.log(err);
    // this.$message({
    //     showClose: true,
    //     message: `${response.data.msg}`,
    //     type: 'error'
    //   });
    return Promise.reject(err)
})

api.interceptors.response.use((res) => {
    // 成功
    loadingInstance.close();
    // console.log(res);
    return Promise.resolve(res)
}, (err) => {
    Message({
        showClose: true,
        message: `${err.response.data.msg}`,
        type: 'error'
      });
    console.log(err);
    // 失败
    return Promise.reject(err)
})

export default api





